package asia.kalin.utils;

/**
 * @Author: Kalin
 * @Name：ILock
 * @Date: 2025/3/11
 * @description 分布式锁的接口
 */

public interface ILock {

    /**
     * 尝试获取锁
     * @param timeoutSec 锁持有的超时时间 过期自动释放
     * @return true代表获取成功 反之失败
     */
    boolean tryLock(long timeoutSec);

    boolean tryLock();

    /**
     * 释放锁
     */
    void unlock();
}
